
#ifdef _MSC_VER
    //warning C4512: assignment operator could not be generated
    #pragma warning (disable: 4512)

    //warning C4127: conditional expression is constant 
    #pragma warning (disable: 4127)

    //warning C4189: local variable is initialized but not referenced
    #pragma warning (disable: 4189)
#else

    #pragma GCC diagnostic push
    #pragma GCC diagnostic ignored "-Wdelete-non-virtual-dtor"
    #pragma GCC diagnostic ignored "-Wnon-virtual-dtor"
    #pragma GCC diagnostic ignored "-Weffc++"
    #pragma GCC diagnostic ignored "-Wctor-dtor-privacy"
    #pragma GCC diagnostic ignored "-Wconversion-null"
    #pragma GCC diagnostic ignored "-Wold-style-cast"
    #pragma GCC diagnostic ignored "-Wconversion"
    #pragma GCC diagnostic ignored "-Wunused-variable"
    #pragma GCC diagnostic ignored "-Wunused-local-typedefs"
#endif


